Automatic determination of pumping methods

ABSTRACT

Systems, methods, and a computer readable medium are provided for automatically determining pumping methods within an oil production environment. Sensor data can be collected from pumps configured in the oil production environment and can be used to generate an advisory statement identifying a new or alternate pumping method to replace a currently deployed pump. The advisory statement can identify a suitable replacement pump and determine the appropriate operating parameters necessary for the new pump to achieve maximal production rates. The advisory statement can be transmitted to a computing device configured within a supervisory control and data acquisition system. The computing device can provide the advisory statement via a display of the computing device.

BACKGROUND

An oil production environment can include multiple well sites, each configured with one or more pumping systems that are used to collect oil for further processing and distribution. The pumping systems can include a variety of machinery used in the production process. The machinery can be configured to include sensors capable of transmitting sensor data that can be used to determine the operating parameters of the machinery.

Supervisory control and data acquisition (SCADA) systems can include control system architectures using computers and networked data communications to monitor and control machinery or systems of machinery according to desired operating parameters and based on received sensor data.

SUMMARY

In one aspect, a system for automatically determining pumping methods within an oil production environment is provided herein. The system can include a first pump operating within an oil production environment according to a first set of operating parameters associated with the first pump. The system can also include one or more sensors, affixed to the first pump. The one or more sensors can be configured to generate pump sensor data associated with the first pump. The system can further include a first computing device, including a data processor. The first computing device can be configured to receive the generated pump sensor data. The first computing device can also be coupled to the one or more sensors via a supervisory control and data acquisition system configured with a plurality of computing devices, linked via a network, to monitor and control one or more pumps within the oil production environment in relation to one or more sets of operating parameters associated with the one or more pumps. The first computing device can include a memory storing instructions which, when executed, cause the data processor to perform operations. The operations can include generating an advisory statement, based on the received pump sensor data. The advisory statement can identify a second pump and a second set of operating parameters associated with the second pump. The operations can also include providing the advisory statement. The system can also include a second computing device, including a data processor and a display. The second computing device can be configured to receive the advisory statement from the first computing device and to display the advisory statement on a display of the second computing device.

In another aspect, methods for automatically determining pumping methods within an oil production environment are also provided herein. In one embodiment, the method can include receiving, by a first computing device including a data processor, pump sensor data associated with a first pump. The pump sensor data can be generated by one or more sensors affixed to the first pump configured within an oil production environment and operating according to a first set of operating parameters associated with the first pump. The one or more sensors can be coupled to the first computing device via a supervisory control and data acquisition system configured with a plurality of computing devices, linked via a network, to monitor and control one or more pumps within the oil production environment in relation to one or more sets of operating parameters associated with the one or more pumps. The method can also include generating, by the first computing device, an advisory statement based on the received pump sensor data. The advisory statement can identify a second pump and a second set of operating parameters associated with the second pump. The method can further include providing, by the first computing device, the advisory statement.

In another aspect, a non-transitory machine readable storage medium containing program instructions for automatically determining pumping methods within an oil production environment is provided. The program instructions contained on the machine readable storage medium can perform operations including receiving pump sensor data, by a first computing device including a data processor. The pump sensor data can be generated by one or more sensors affixed to the first pump operating within an oil production environment according to a first set of operating parameters associated with the first pump. The one or more sensors coupled to the computing device via a supervisory control and data acquisition system can be configured with a plurality of computing devices, linked via a network, to monitor and control one or more pumps within the oil production environment in relation to one or more sets of operating parameters associated with the one or more pumps. The program instructions contained on the machine readable storage medium can also perform operations including generating an advisory statement, by the computing device. The advisory statement can be generated based on the received pump sensor data. The advisory statement can identify a second pump and a second set of operating parameters associated with the second pump. The program instructions contained on the machine readable storage medium can also perform operations including providing, by the computing device, the advisory statement.

DESCRIPTION OF DRAWINGS

These and other features will be more readily understood from the following detailed description taken in conjunction with the accompanying drawings, in which:

FIG. 1 is a diagram illustrating an example architecture for a system for automatically determining pumping methods within an oil production environment;

FIG. 2 is a diagram illustrating an exemplary system for automatically determining pumping methods in operation within the oil production environment;

FIG. 3 is a diagram illustrating one exemplary embodiment of a method for automatically determining pumping methods for within an oil production environment using the exemplary system of FIG. 2; and

FIG. 4 is a diagram illustrating one exemplary embodiment of a graphical user interface for providing advisory statements in regard to automatically determined pumping methods within the oil production environment.

It is noted that the drawings are not necessarily to scale. The drawings are intended to depict only typical aspects of the subject matter disclosed herein, and therefore should not be considered as limiting the scope of the disclosure.

DETAILED DESCRIPTION

Improving well production in an oil production environment can be an important goal for environment operators. Maintaining and operating refinery equipment, such as well pumps, motors, and valves, at optimal operating conditions can be used to achieve maximal oil production from a particular oil well site. Oil production environments can be configured with a large variety of machinery used to collect, process, and distribute oil. The machinery is frequently interfaced to sensors that are configured to collect sensor data pertaining to a particular operating parameter or measurement variable associated with the machinery. Typically, such sensor data can provide environment operators with insight about the production rate, pump operating parameters, and immediate or historical performance of the well or the pumps configured at the well. Sensor data can be analyzed and processed manually to determine if the well is operating as efficiently as possible according to previously determined pumping methods and to determine alternate pumping methods which may be more productive if employed at a well, but manual analysis and data processing of pumping methods can be error prone and time consuming.

Sensor data collected from the well pumps can be used in monitoring and control applications called advisory systems, which are frequently configured within SCADA systems. The SCADA system can include computing devices that are networked to the pumps, sensors, and other computing devices so that the system can collect and process the sensor data in order to generate advisory statements or data which can describe an operational state of the pumps being monitored. The advisory data can be generated by an advisory system that is configured on one of the computing devices in the SCADA system. The advisory system includes a memory storing logic and operating condition data that are used to evaluate sensor data received from a pump and perform analysis regarding the current operating state of the pump. For example, the advisory system can receive sensor data indicating that a pump is vibrating excessively and threatening the continued operation of the pump. The advisory system can generate an alarm so that operators can evaluate the sensor data and the pump operation further.

Advisory systems can be useful for indicating inefficient operating conditions, eminent failure conditions, and trend data associated with the current operation of the pump, however advisory systems typically lack sufficient logic or processing capabilities to adequately determine and provide alternate pumping methods and operating parameters which, when implemented, are more likely to avoid, adjust, or otherwise correct the inefficient pumping methods and operating conditions. Legacy advisory systems can provide indicators, such as alarms, notifications, and reports about machinery exceeding operational thresholds, but often these systems are not configured to generate advisory statements that identify alternate pumping equipment, pumping methods, and the corresponding operating parameters associated with the alternate pumps and pumping methods. By upgrading legacy advisory systems to include analysis and processing components that can generate advisory statements which identify new or alternate pumping methods, wells can be configured with suitable pumps and operating parameters necessary to maintain production at high rates and reduce the incidence of failure conditions. As a result, some implementations of the improved advisory system can automatically determine pumping methods that will generate maximal oil production rates with reduced downtime and less reliance on manual resources for one or more wells in an oil production environment. The advisory systems can also utilize the sensor data to determine performance optimizations for the well or the machinery operating at the well site. For example, an advisory system can generate advisory statements indicating a production optimization that can be achieved based on the current sensor data and the operating conditions that the advisory system is monitoring. The advisory statement may indicate “Well-242: potential to generate additional 200 barrels per day by increasing pump motor speed”.

An improved advisory system is provided herein including systems, methods, and computer-readable mediums for automatically determining pumping methods to be implemented in an oil production environment and generating advisory statements including the determined pumping methods. Sensor data identifying operational data associated with the pump to which the sensors are coupled can be received by a first computing device. The first computing device can include a remote terminal unit, a field controller and a field gateway. The first computing device can be located at a well sight and can transmit the sensor data to a second computing device, which may be located remotely from the first computing device. The second computing device can be configured with a memory including a database, an advisory system and an integrator. The received sensor data is processed on the second computing device by the advisory system and advisory statements are generated. In some embodiments, the advisory statements can be generated by analyzing historical downhole pressure data, as well as pump motor parameter trends. The parameter trends will indicate changes (e.g., dramatic or gradual changes) in the downhole parameters of the wellbore and the pump. The advisory system can process the parameter trends to determine if the current pumping method is acceptable for the existing conditions.

The advisory system can also process operational data associated with the current pumping method such as tubing size, casing size, deviation survey data, and perforation depth to determine the suitability of the current pumping method. The advisory system can employ a pump selection algorithm to determine an alternate pumping method from a predefined database. The pumping method can include a pump type, pump size, pump model.

Upon selecting the alternate pumping method, the advisory system can perform a simulation using the current downhole intake pressure value and historical downhole intake pressure values. The advisory system can determine the decay rate of the downhole intake pressure values and can translate the decay rate into a flow rate. In this way, the advisory system can better determine a frequency range suitable to maintain the downhole intake pressure value at an acceptable value for as long as possible.

For example, after installing an electric submersible pump (ESP) in an oil well and operating the pump for a period of time, the downhole intake pressure began to slowly, and consistently decrease. The advisory system initiated providing notifications to the user to decrease the pump motor speed in order to adjust the pump motor speed with respect to the decreasing downhole intake pressures. At a certain point, the ESP speed or frequency cannot be adjusted lower as it may require the ESP to operate outside the operational state specified for the ESP.

Upon determining that further adjustments cannot be applied to the ESP operation, the advisory system can analyze the downhole intake pressure values and the operational data associated with the current pumping method. The advisory system can search the predefined database to determine an alternate pumping method. The advisory system can perform a simulation of the alternate pumping method to forecast the flow rate at optimum operating conditions. If the forecast indicated the alternate pumping method will cause slightly lower production rates, but better stability and continuity, the advisory system can generate the advisory statement identifying the alternate pumping method. If the advisory system determines the alternate pumping method does not provide any improvement, the advisory system evaluates subsequent, additional pumping methods in the predefined database. If the advisory system determines that no pumping methods will forecast better production rates, stability, or continuity, the advisory system will not generate an advisory statement and instead provide a notification of the expected ESP failure.

Thus, the advisory statements include data identifying an alternate pumping method to be configured at the well in order to maintain efficient well production and safe operation of the well equipment. The improved advisory system can also utilize the sensor data to determine performance optimizations for the well or the pump operating at the well site. For example, the improved advisory system can generate advisory statements indicating a production optimization can be achieved based on the current sensor data and the operating conditions that the advisory system is monitoring. The improved advisory system can generate advisory statements that can indicate a production gain to be achieved if the current pump is replaced with an alternate pump and operated at particular operating parameters. For example, the improved advisory system can generate an advisory statement such as “Well-242: potential to generate additional 200 barrels per day by replacing the progressive cavity pump (PCP) with an electric submersible pump (ESP) and operating the ESP at 56.3 Hz”.

In this way, pump operators can be warned of inefficient or dangerous operating conditions based on existing pumping methods and operating parameters and can automatically receive new or alternate pumping methods and operating parameters to configure in the oil production environment in order to maintain production rates and safe operating conditions at a well site. Some implementations of the improved advisory system described herein can reduce the requirement for manual analysis and data processing necessary to determine new or alternate pumping methods and can further enable better real-time monitoring and control compared to legacy systems. Some implementations of the improved advisory system can provide cost benefits associated with extending the life of the well site pumps and equipment, reduced maintenance and fewer pump replacements, improved water cuts, and greater production rates from the oil production environment.

Embodiments of systems and corresponding methods for automatically determining pumping methods are discussed herein. However, embodiments of the disclosure can be employed for determining alternate equipment and operating parameters for other types of machinery, such as compressors, valves, or the like in an oil production environment without limit.

FIG. 1 is a diagram illustrating an example architecture for a system for automatically determining pumping methods with respect to an oil production environment. The architecture 100 includes an oil production environment 105 and a supervisory control and data acquisition (SCADA) system 115 that is coupled via a network to machinery configured within the oil production environment.

The oil production environment 105 includes a plurality of wells 110, such as wells 110A-110C. The wells may be configured to generate oil and can be configured with one or more pumps that are operable to pump the oil from sub-surface formations into processing systems configured to collection, process and distribute the oil further. Each of the wells 110 and the machinery associated therewith can be configured with one or more sensors to monitor various aspects of the operation of the well machinery and the well as a whole. The sensors can be coupled via a network to the SCADA system 115.

The SCADA system 115 can include a first computing device such as the data acquisition and control device 120, a pump optimization server 130, and a client device 165. The data acquisition and control device 120 can include a remote terminal unit 125. The data acquisition and control device 120 can be configured to receive sensor data from sensor-coupled machinery associated with each of the wells 110 and transmit the sensor data to the pump optimization server 130. The data acquisition and control device 120 can be located in proximity to the machinery of wells 110 and can be further configured to transmit control signals to the machinery associated with each of the wells 110. The remote terminal unit (RTU) 125 can be configured as an interface connecting the sensor-coupled machinery to the pump optimization server 130 and can be configured to apply parameter settings to the machinery at one or more well sites. The RTU 125 is a kind of data communication module that is configured to perform serial communications using the MODBUS protocol. The RTU 125 reads the data from multiple devices at the well site in real-time or near real-time and writes to some parameters if the RTU 125 receives a write command from the field controller 135.

The SCADA system 115 also includes a second computing device, such as the pump optimization server 130. In certain aspects, the pump optimization server 130 can be a cloud computing server of an infrastructure-as-a-service (IaaS) and be able to support a platform-as-a-service (PaaS) and software-as-a-service (SaaS) services. The pump optimization server 130 can be implemented remotely from the data acquisition and control device 120 and can be configured by the client device 165. The client device 165, the pump optimization server 130, and the data acquisition and control device 120 can communicate with each other via a network. The network can include, for example, any one or more of a personal area network (PAN), a local area network (LAN), a campus area network (CAN), a metropolitan area network (MAN), a wide area network (WAN), a broadband network (BBN), the Internet, and the like. Further, the network can include, but is not limited to, any one or more of the following network topologies, including a bus network, a star network, a ring network, a mesh network, a star-bus network, tree or hierarchical network, and the like.

As shown in FIG. 1, the pump optimization server 130 includes a field collector/controller 135, and an advisory system 140. The advisory system 140 can include a pump optimization system 145, a pump modeling system 155, and a memory 160. In broad terms, the pump optimization server 130 can be configured to receive the sensor data from the data acquisition and control device 120 and to process the received sensor data to generate advisory statements and optimization data to be included in the advisory statements.

The pump optimization server 130 includes a field collector/controller 135 which can collect the data from the RTUs and can verify the validity of the collected data. The field collector/controller 135 then transmits the data a field gateway (not shown), where the field gateway writes the data into a memory, such as the memory 160. In addition, the field collector/controller 135 can receive operating parameters and control commands from the advisory system 140. The field collector/controller 135 can further transmit or write the operating parameters and control commands to the RTU who, in turn, may provide the operating parameters and control commands to the corresponding device (e.g. the pump control drive or motorized valves which may be coupled to the pump).

The pump optimization server 130 also includes an advisory system 140. The advisory system 140 can include logic and executable instructions which can be configured to analyze the received sensor data and to compare the sensor data to operating parameters and operating settings stored in memory 160 or in a database configured within memory 160. The advisory system 140 can generate advisory statements in response to situations in which the sensor data indicates a pump is operating outside of expected operating parameters possibly indicating an existing or impending failure of the current pump and pumping method.

As further shown in FIG. 1, the advisory system 140 includes a pump optimization system 145. The pump optimization system 145 includes a predefined database 150 which can include available alternate pumping methods, pump sizes, pump models, and pump types. The predefined database 150 can include data associated with the pumps which can be selected in response to determining a currently configured pumping method is not operating in the most economical, efficient, or safe manner based on the received sensor data, as well as the output of the pump optimization system 145. The pump optimization system 145 can also include logic and executable instructions which can be configured to process the received sensor data and to generate optimization data corresponding to a particular pump. The optimization data can include one or more actions, parameters, and parameter variables associated with an operation of a pump, a pump motor, or one or more motor valves associated with the pump. The pump optimization system 145 processes the sensor data for a particular pump to determine whether or not optimizations of the pumping method can be achieved. If the pump optimization system 145 determines that no further optimization of the pumping method can be achieved, the pump optimization system 145 determines if the current operating conditions are best suited for the pumping method and desired production rates. In response to determining the current operating conditions are sufficient, no advisory statement is generated by the advisory system 140 and the pumping method continues. In response to determining the current operating conditions are not best suited for the pumping method or desired production rates, the advisory system 140 executes instructions for the pump modeling system 155 to determine a new pumping method and new operating parameters associated with the new pumping method which are most likely to achieve an increase in production or allow the well site to operate safely and efficiently.

As shown in FIG. 1, the advisory system 140 incudes a pump modeling system 155. The pump modeling system 155 can process real-time and historical pump data to estimate changes in the downhole conditions. The pump modeling system 155 can determine whether or not the changing conditions are acceptable and can evaluate alternative pumping methods from the predefined database 150. The pump modeling system 155 can evaluate the alternative pumping methods in terms of casing and tubing sizes, pump types, pump sizes and pump models. The pump modeling system 155 can select an alternative pumping method based on the existing pumping method and determining that an alternative pumping method will provide better results than the existing pumping method.

The advisory system 140 can call or request the pump modeling system 155 generate a new or suggested pump and operating parameters of the pump which can be deployed at the well site as a new or alternate pumping method. The pump modeling system 155 can employ an algorithm based on a customer database which can include well information, pump configurations and installation data of pumps at well sites, drilling reports, deviation surveys, and the like. The algorithm can include inputs such as the received sensor data, as well as the outputs of the pump optimization system 145. The pump modeling system 155 can then generate new or alternate pumps, pumping methods, and operating parameters to include in an advisory statement generated by the advisory system 140. The algorithm can be configured so that the existing pump and pumping method associated with the received sensor data is not considered as a candidate for a new or alternate pumping method and is removed from a pool of potential pumps and pumping methods that can be considered as the new or alternate pumping method. In this way, the pump modeling system 155 can efficiently select a new or alternate pump and pumping method which is most likely to remedy the inefficient pumping method, thus making the advisory system 140 more accurate and efficient in generating advisory statements identifying pumping methods which are mostly likely to maintain or improve production rates and safe operation of the well equipment.

The advisory statements can include data identifying a new or alternate pumping method and can also include a new or alternate pump type, a model number of the new or alternate pump, and new or alternate operating parameters such as a frequency at which to operate the new or alternate pump.

As shown in FIG. 1, the pump optimization server 130 includes a memory 160. The memory 160 can include a database or similar data structure that can be configured to store a listing of pumps, operating parameters associated with the pumps, advisory statements, and received sensor data. The memory 160 can include executable instructions which cause the advisory system 140 to determine an optimization for a pump via the pump optimization system 145, determine a new or alternate pump and operating parameters for the new or alternate pump via the pump modeling system 155, and generate advisory statements via the advisory system 140. In addition, the memory 160 can include executable instructions which cause the pump optimization server 130 to provide the advisory statements, sensor data, and/or optimization data to the client device 165.

As further shown in FIG. 1, the SCADA system 115 includes a client device 165. The client device 165 to which the pump optimization server 130 is connected over a network can be, for example, desktop computers, mobile computers, tablet computers, mobile devices (e.g., a smartphone or PDA), or any other devices having appropriate processor, memory, and communications capabilities. The client device 165 includes a pump database 170, a memory 175, and a display 180. The client device 165 can include a client device that is used to configure one or more aspects of the SCADA system 115 including the functionality associated with the data acquisition and control device 120 as well as the pump optimization server 130. The client device 165 can be any computing device that is appropriately configured to receive user inputs and to display data or executable content associated with the SCADA system 115. For example, the client device 165 can be utilized to input desired operating conditions for an oil well or oil-production machinery that is configured within the oil production environment 105. Additionally, the client device 165 can display, via display 180, the current operating conditions, historical trends associated with the operating conditions, as well as advisory statements, optimization data, sensor data. The client device 165 can provide this data via the display 180 in graphical and textual formats. The graphical formats can include a variety of time-based graphs plotting the sensor data, pump operating conditions, and warnings to make the data more easily interpretable to a user. In some embodiments, the client device 165 can include a mobile computing device, such as a smart-phone, tablet, or laptop computer that is connected to the pump optimization server 130 via wireless or wired communication means.

FIG. 2 is a diagram illustrating an exemplary system 200 for automatically determining pumping methods in operation with respect to an oil pump configured within the oil production environment. The remote acquisition and data control device 120, the pump optimization server 130, and the client device 165 are similar in structure and function as those shown and described in relation to FIG. 1, except where noted otherwise.

As shown in FIG. 2, the exemplary system 200 for automatically determining pumping methods includes a well 205. The well 205 can be a well that is configured for oil production. The well 205 includes a pump 210. The pump 210 can include an electric submersible pump, a progressive cavity pump, a sucker rod pump, a beam pump, a gas lift pump, and/or the like. A number of pump components are also included in the system 200. For example, the system includes a number of sensors that are configured to collect and provide data about one or more aspects of the pump or the pump distribution system such as a well head pressure sensor (WHPS) 215, a flow line pressure sensor (FLPS) 220, and a downhole sensor (DHS) 225. Additionally, the system 200 can include a variable speed drive 230 that controls the speed of the pump motor and the operation pump motor, for example turning the pump motor on or off. The variable speed drive 230 is a physical drive device that can be configured to operate the pump at a variety of different speeds or frequencies, such as 50 or 3600 revolutions-per-minute or Hz. Additional sensors may also be configured in relation to the well or the pump and can be configured to operate with the system 200 without deviating from the disclosure herein. For example, the downhole sensor 225 can include sensors configured to measure the intake pressure and temperature, the discharge pressure and temperature, as well as the vibration characteristics of the pump 210 as it operates in the well 205. The system 200 further includes a data acquisition and control device 120 that is coupled via a network 240 to the pump optimization server 130. Similarly the pump optimization server 130 is coupled to the client device 165 via a network 245.

In operation, the system 200 shown in FIG. 2, generates sensor data from one or more sensors, such as the well head pressure sensor 215, the flow line pressure sensor 220, and/or the downhole sensor 230. Additionally, sensor data can be provided by the variable speed drive 230 to indicate the current speed of rotation of the pump motor, amperage of the pump motor, and the voltage rates applied to the pump motor. The sensor data is received by the remote terminal unit 125 of the data acquisition and control device 120 where it is transmitted via the field collector/controller 135 to the pump optimization server 130 via network 240. The sensor data is received by the advisory system 140 where it is analyzed in regard to the predetermined operating parameters for the pump. For example, the well may be configured with an operating parameter indicating that the well should be run using an electric submersible pump (ESP) at a speed of 50 Hz to produce 1000 barrels of oil per day with less than 30% water cut. Water cut is a measurement of the amount of waste water necessary to produce the target production rate, for example, 1000 barrels per day.

The advisory system 140 receives the sensor data from the data acquisition and control device 120 and performs analysis of the sensor data in regard to the operating parameters. The advisory system 140 can determine that replacing the ESP with a PCP and operating the PCP at 52.4 Hz would produce an additional 300 barrels of oil per day. The advisory system 140 can determine the new pumping method based on the sensor data associated with the variable speed drive 230 as well as the downhole sensor 230 data indicating that while current production is acceptable, the sensor data indicates high vibration, excess gas, increased water cut, or gradual declines in flow line pressures indicating a new pumping method should be considered to maintain production rates. The advisory system 140 can generate an advisory statement indicating the new pumping method to be deployed at the well site to maintain or even improve production rates.

The advisory system 140 can transmit the advisory statement to the client device 165 where it can be provided to an operator of the well via the display 180. In some embodiments, the advisory statement can be stored in the pump database 170 and/or the memory 175. The operator can then receive the advisory statement and take action to coordinate replacing the existing ESP with a PCP to be operated according to the operating parameters included in the advisory statement.

FIG. 3 is a diagram illustrating one exemplary embodiment of a method for automatically determining pumping methods within an oil production environment using the exemplary system 200 shown and described in relation to FIG. 2. In certain aspects, embodiments of the method 300 can include greater or fewer operations than illustrated in FIG. 3 and the operations can be performed in a different order than illustrated in FIG. 3.

For example, in operation 305, first computing device, such as the data acquisition and control device 120, receives pump sensor data associated with a first pump. The pump sensor data can include sensor data from a well head pressure sensor, a flow line pressure sensor, a casing pressure sensor, a downhole sensor, and a pump motor speed sensor such as a variable speed drive sensor.

In operation 310, the data acquisition and control device 120 transmits the pump sensor data to a second computing device, such as the pump optimization server 130. In operation 315, the pump optimization server 130 generates an advisory statement. The advisory system 140, configured on the pump optimization server 130, processes the received pump sensor data to generate the advisory statement. The advisory statement can be generated based on comparing the received sensor data to one or more operating parameters stored in the memory 160.

In operation 320, as an interim step of generating the advisory statement, the pump optimization server 130 determines a second pump and operating parameters associated with the second pump. The new pumping method can be determined after processing historical data of the downhole sensor 225 which can indicate that the existing pumping method is no longer the most efficient to generate the best production or is no longer suitable for the existing downhole conditions. The pump optimization server 130 can evaluate the alternative pumping methods included in the predefined database 150. The predefined database 150 can include lists of pump models, pump types, pump sizes, as well as the capacity of different pumping units. The pump optimization server 130 can select an alternate pumping method by evaluating the existing tubing and casing sizes and to iteratively search the predefined database 150 using a reductive search minimization technique to identify pumping methods which comply with the existing tubing and casing sizes. The pump optimization server 130 can then evaluate a filtered list of suitable pumping methods and perform simulations of the productivity each alternate pumping method can achieve based on the historical data of the downhole pressures. The pump optimization server 130 can perform the simulations based on the available pump performance models associated with each alternative pumping method in the filtered list. The simulation results can be sorted based on the production rates and pump speed associated with the highest performing alternative pumping methods.

For example, the pump optimization system 145 can process the received sensor data to determine whether or not an optimization of the first (and currently deployed) pump can be achieved. If the pump optimization system 145 determines there is potential for additional optimizations of the first pump, the pump optimization system stores the received sensor data in a database, such as a database configured in memory 160. If the pump optimization system 145 determines that no potential for pump optimizations exist, the pump optimization system 145 determines if the received sensor data corresponds to the best and more efficient operating conditions for the pump. In response to determining the received sensor data indicates the pump is operating at an acceptable operating condition, the pump remains in operation and no advisory statement is generated. In response to determining the received sensor data indicates the pump is not operating at an acceptable operating condition, a new pumping method is requested from the pump modeling system 155. The pump modeling system 155 processes the received sensor data and applies an algorithm to select a new pumping method from a pump database 170 implemented on the client device 165. In some embodiments, the pump database can be stored in the memory 160 of the pump optimization server 130. As a result of completing the selection of the second pump and operating parameters associated with the second pump, the advisory system 140 generates the advisory statement.

In operation 325, the pump optimization server 130 transmits the advisory statement to a third computing device, such as the client device 165. Once received, in operation 330, the client device 165 can provide the advisory statement via a display configured on the client device, such as the display 180. The advisory statement can also be stored in the pump database 170 and/or the memory 175.

In operation 335, the SCADA system 115 can iteratively perform operations 305-330 based on one or more time intervals. Time intervals can include intervals of minutes, such intervals that are 5-15, 15-30, 30-60, or 60-180 minutes in duration. Time intervals can further include intervals of days, such as intervals that are 0.5-1, 1-3, or 3-5 days in duration.

FIG. 4 is a diagram illustrating one exemplary embodiment of a graphical user interface (GUI) 400 for displaying pump sensor data, pump operating parameters, and advisory statements using the exemplary system 200 shown and described in relation to FIG. 2. The GUI 400 can be provided to a user via display 180 on client device 165. The GUI 400 illustrated in FIG. 4 can include additional or fewer graphical affordances, which may or may not be illustrated, but are described herein. FIG. 4 can describe a GUI, such as GUI 400, configured to receive input from a user, however, the GUI 400 can also receive input from a computer via electronic communication between computers executing computer-readable instructions to provide input into the GUI 400. The GUI 400 can be configured to execute instructions, upon receipt of input from a user or a computer, which initiate processing or execution of further functionality on an electronically coupled computer that may or may not be illustrated, but is described in relation to GUI 400 of the system 200 illustrated in FIG. 2.

The GUI 400 shown in FIG. 4 illustrates an improved user interface for visualizing data associated with a system for automatically determining pumping methods. The improved interface can include graphical affordances to provide selections of data, as well as data processing and visualization functionality associated with one or more pumps that can be configured within an oil production environment. The improved interface can provide a user with increased data comprehension and enhanced data rendering and visualization in a manner that legacy SCADA systems cannot provide.

As shown in FIG. 4, the GUI 400 can be implemented in an application hosted on client device 165 or in a web-based application hosted remotely and accessed via a web browser. The GUI 400 can be implemented as a dashboard and can include menu selections for file management (e.g., “File”), data import/export/management (e.g., “Data”), executing functionality related to analytics or the advisory system 140 (e.g., “Analytics”), user and system configured preferences or options affecting the display or operation of the GUI 400 (e.g., “Options”), accessing technical documentation or interactive assistance regarding operation of the GUI 400 or the automatic pump control system 200 (e.g., “Help”), and authentication and access functionality identifying a user or administrator as a credentialed user of the GUI 400 and/or the automatic pump control system 200 (e.g., “Login”).

As shown in the non-limiting examples illustrated in FIG. 4, the GUI 400 includes interface affordances such as fields, menus, selections and input mechanisms for providing multiple forms of query input via a search input 405, a visualization input 410, a well selection input 415, and a date criteria input 420. The GUI 400 includes a field well list panel 425 identifying pumps configured at various well sites within the oil production environment to which the SCADA system 200 is coupled. The GUI 400 also includes a display panel 430.

As shown in FIG. 4, the display panel 430 of GUI 400 displays a dynamically updated graph of one or more operating parameters at different time intervals. For example, as shown for well 110A which is configured with an ESP, the desirable operating parameters has been established at 1040 psi, shown by the dashed line. The system 200 collects sensor data to generate a plot of the observed operating parameter, shown as a solid line. During the operation of the well, the system 200 can determine and generate advisory statements to remedy or correct the present pumping method. As shown in FIG. 4, the observed operating parameter on Dec. 7, 2018 have dropped below the desirable FLP operating parameter to a level of 1025 psi. As a result, the system 200 has determined an advisory statement 435 to replace the ESP at Well 110A with a sucker rod pump (SRP) to gain an additional potential production of 1500 barrels (BBL) per day by operating the SRP at a frequency of 87.2 Hz.

Exemplary technical effects of the methods, systems, and devices described herein include, by way of non-limiting example, automatically determining a pumping method within an oil production environment. By automatically generating advisory statements including new or alternate pumping methods, maximal production rates and reduced equipment downtime can be achieved at well sites within oil production environments without requiring additional human or computing resources to manually process sensor data which may indicate an existing pumping method is insufficient. Thus the system represents an improvement of computer functionality within a SCADA system that manages pumps or other well equipment based on the sensor data. In this way, the improved system 200 for automatically determining pumping methods can provide faster, more reliable instructions to configure pumping methods within the oil production environment in order to maintain pump operation and/or well production as close as possible to desirable operating goals.

Certain exemplary embodiments have been described to provide an overall understanding of the principles of the structure, function, manufacture, and use of the systems, devices, and methods disclosed herein. One or more examples of these embodiments have been illustrated in the accompanying drawings. Those skilled in the art will understand that the systems, devices, and methods specifically described herein and illustrated in the accompanying drawings are non-limiting exemplary embodiments and that the scope of the present invention is defined solely by the claims. The features illustrated or described in connection with one exemplary embodiment may be combined with the features of other embodiments. Such modifications and variations are intended to be included within the scope of the present invention. Further, in the present disclosure, like-named components of the embodiments generally have similar features, and thus within a particular embodiment each feature of each like-named component is not necessarily fully elaborated upon.

The subject matter described herein can be implemented in analog electronic circuitry, digital electronic circuitry, and/or in computer software, firmware, or hardware, including the structural means disclosed in this specification and structural equivalents thereof, or in combinations of them. The subject matter described herein can be implemented as one or more computer program products, such as one or more computer programs tangibly embodied in an information carrier (e.g., in a machine-readable storage device), or embodied in a propagated signal, for execution by, or to control the operation of, data processing apparatus (e.g., a programmable processor, a computer, or multiple computers). A computer program (also known as a program, software, software application, or code) can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file. A program can be stored in a portion of a file that holds other programs or data, in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub-programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network.

The processes and logic flows described in this specification, including the method steps of the subject matter described herein, can be performed by one or more programmable processors executing one or more computer programs to perform functions of the subject matter described herein by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus of the subject matter described herein can be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit).

Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processor of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor for executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks. Information carriers suitable for embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, (e.g., EPROM, EEPROM, and flash memory devices); magnetic disks, (e.g., internal hard disks or removable disks); magneto-optical disks; and optical disks (e.g., CD and DVD disks). The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.

To provide for interaction with a user, the subject matter described herein can be implemented on a computer having a display device, e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor, for displaying information to the user and a keyboard and a pointing device, (e.g., a mouse or a trackball), by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well. For example, feedback provided to the user can be any form of sensory feedback, (e.g., visual feedback, auditory feedback, or tactile feedback), and input from the user can be received in any form, including acoustic, speech, or tactile input.

The techniques described herein can be implemented using one or more modules. As used herein, the term “module” refers to computing software, firmware, hardware, and/or various combinations thereof. At a minimum, however, modules are not to be interpreted as software that is not implemented on hardware, firmware, or recorded on a non-transitory processor readable recordable storage medium (i.e., modules are not software per se). Indeed “module” is to be interpreted to always include at least some physical, non-transitory hardware such as a part of a processor or computer. Two different modules can share the same physical hardware (e.g., two different modules can use the same processor and network interface). The modules described herein can be combined, integrated, separated, and/or duplicated to support various applications. Also, a function described herein as being performed at a particular module can be performed at one or more other modules and/or by one or more other devices instead of or in addition to the function performed at the particular module. Further, the modules can be implemented across multiple devices and/or other components local or remote to one another. Additionally, the modules can be moved from one device and added to another device, and/or can be included in both devices.

The subject matter described herein can be implemented in a computing system that includes a back-end component (e.g., a data server), a middleware component (e.g., an application server), or a front-end component (e.g., a client computer having a graphical user interface or a web browser through which a user can interact with an implementation of the subject matter described herein), or any combination of such back-end, middleware, and front-end components. The components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include a local area network (“LAN”) and a wide area network (“WAN”), e.g., the Internet.

Approximating language, as used herein throughout the specification and claims, may be applied to modify any quantitative representation that could permissibly vary without resulting in a change in the basic function to which it is related. Accordingly, a value modified by a term or terms, such as “about,” “approximately,” and “substantially,” are not to be limited to the precise value specified. In at least some instances, the approximating language may correspond to the precision of an instrument for measuring the value. Here and throughout the specification and claims, range limitations may be combined and/or interchanged, such ranges are identified and include all the sub-ranges contained therein unless context or language indicates otherwise.

One skilled in the art will appreciate further features and advantages of the invention based on the above-described embodiments. Accordingly, the present application is not to be limited by what has been particularly shown and described, except as indicated by the appended claims. All publications and references cited herein are expressly incorporated by reference in their entirety. 

1. A method comprising: receiving, by a first computing device including a data processor, pump sensor data associated with a first pump, the pump sensor data generated by one or more sensors affixed to the first pump configured within an oil production environment and operating according to a first set of operating parameters associated with the first pump, the one or more sensors coupled to the first computing device via a supervisory control and data acquisition system configured with a plurality of computing devices, linked via a network, to monitor and control one or more pumps within the oil production environment in relation to one or more sets of operating parameters associated with the one or more pumps; generating, by the first computing device, an advisory statement based on the received pump sensor data, the advisory statement identifying a second pump and a second set of operating parameters associated with the second pump; and providing, by the first computing device, the advisory statement.
 2. The method of claim 1, wherein the pump sensor data includes well head pressure sensor data, flow line pressure sensor data, variable speed drive sensor data, and/or downhole sensor data.
 3. The method of claim 1, wherein the first pump and/or the second pump include at least one of an electric submersible pump, a sucker rod pump, a progressive cavity pump, a beam pump, or a gas lift pump.
 4. The method of claim 1, wherein generating the advisory statement identifying the second pump further includes removing the first pump from a list of one or more pumps available to be identified as the second pump.
 5. The method of claim 1, wherein the second set of operating parameters identified in the advisory statement includes a production estimate associated with the second pump, and an operating frequency associated with the second pump and the production estimate.
 6. The method of claim 1, wherein the advisory statement identifying the second pump includes a type of the second pump and a model number of the second pump.
 7. The method of claim 1, wherein generating the advisory statement includes analyzing historical pump sensor data associated with the first pump in regard to the first set of operating parameters and generating the advisory statement based on the historical pump data associated with the first pump.
 8. The method of claim 1, wherein the first set and the second set of operating parameters are stored in a memory of the first computing device.
 9. The method of claim 1, wherein the one or more pumps, the one or more operating parameters, and the generated advisory statements are stored in a memory configured on the first computing device or a second computing coupled to the first computing device and the advisory statements are provided via a dashboard interface configured on the second computing device.
 10. A system comprising: a first pump operating within an oil production environment according to a first set of operating parameters associated with the first pump; one or more sensors, affixed to the first pump, the one or more sensors configured to generate pump sensor data associated with the first pump; a first computing device, including a data processor, the first computing device configured to receive the generated pump sensor data and coupled to the one or more sensors via a supervisory control and data acquisition system configured with a plurality of computing devices, linked via a network, to monitor and control one or more pumps within the oil production environment in relation to one or more sets of operating parameters associated with the one or more pumps, wherein the first computing device includes a memory storing instructions which, when executed, cause the data processor to perform operations comprising: generating an advisory statement, based on the received pump sensor data, the advisory statement identifying a second pump and a second set of operating parameters associated with the second pump; and providing the advisory statement; and a second computing device, including a data processor and a display, the second computing device configured to receive the advisory statement from the first computing device and to display the advisory statement on a display of the second computing device.
 11. The system of claim 10, wherein the pump sensor data includes well head pressure sensor data, flow line pressure sensor data, variable speed drive sensor data, and/or downhole sensor data.
 12. The system of claim 10, wherein the first pump and/or the second pump include at least one of an electric submersible pump, a sucker rod pump, a progressive cavity pump, a beam pump, or a gas lift pump.
 13. The system of claim 10, wherein generating the advisory statement identifying the second pump further includes removing the first pump from a list of one or more pumps available to be identified as the second pump.
 14. The system of claim 10, wherein the second set of operating parameters identified in the advisory statement includes a production estimate associated with the second pump, and an operating frequency associated with the second pump and the production estimate.
 15. The system of claim 10, wherein advisory statement identifying the second pump includes a type of the second pump and a model number of the second pump.
 16. The system of claim 10, wherein generating the advisory statement includes analyzing historical pump sensor data associated with the first pump in regard to the first set of operating parameters and generating the advisory statement based on the historical pump data associated with the first pump.
 17. The system of claim 10, wherein the first set and the second set of operating parameters are stored in a memory of the first computing device or the second computing device.
 18. The system of claim 10, wherein the one or more pumps, the one or more operating parameters, and the generated advisory statements are stored in a memory configured on the first computing device or the second computing device and are provided via a dashboard interface configured on the display of the second computing device.
 19. The system of claim 18, wherein the dashboard interface is configured to receive a user input specifying a time frame associated with operation one or more pumps during the user specified time frame, the one or more operating parameters occurring during the user specified time frame, and/or the advisory statements generated during the user specified time frame and in response to the user input display the one or more pumps, the one or more operating parameters, and/or the generated advisory statements associated with the specified time frame.
 20. A non-transitory machine readable storage medium containing program instructions, which when executed by a processor cause the processor to perform operations comprising: receiving pump sensor data associated with a first pump, by a computing device including a data processor, the pump sensor data generated by one or more sensors affixed to the first pump operating within an oil production environment according to a first set of operating parameters associated with the first pump, the one or more sensors coupled to the computing device via a supervisory control and data acquisition system configured with a plurality of computing devices, linked via a network, to monitor and control one or more pumps within the oil production environment in relation to one or more sets of operating parameters associated with the one or more pumps; generating an advisory statement, by the computing device and based on the received pump sensor data, the advisory statement identifying a second pump and a second set of operating parameters associated with the second pump; and providing, by the computing device, the advisory statement. 